package com.tiantian.judge.mapper;


import com.tiantian.judge.domain.dto.QueryReplySubDto;
import com.tiantian.judge.domain.bo.JudgeScoreBo;
import com.tiantian.judge.domain.vo.JudgeVo;
import com.tiantian.judge.domain.vo.SubmitInfoVo;
import com.tiantian.judge.domain.vo.JudgeDetailVo;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @author TianTian
 */
@Mapper
public interface JudgeMapper {

    /**
     * 获取判题列表
     */
    List<JudgeVo> selectJudgeList(JudgeVo judgeVO);

    /**
     * 根据用户ID查询判题信息
     */
    JudgeVo selectJudgeInfoByUserId(Long userId);

    /**
     * 根据用户ID查询判断详细信息列表
     */
    List<JudgeDetailVo> selectJudgeDetailListByUserId(Long userId);

    /**
     * 批量更新分数
     */
    int updateScoreByReplyIdBatch(List<JudgeScoreBo> sysJudgeScoreList);

    /**
     * 获取提交信息
     */
    List<SubmitInfoVo> selectSubInfo(QueryReplySubDto queryReplySubDTO);

    /**
     * 获取评分状态 ("0"未评分 "1"评分完毕)
     */
    String selectJudgeStatusByUserId(Long userId);

}
